/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.bionic.socialNet.dao.abstractClasses;

import com.bionic.socialNet.dao.implementations.OraDAOFactory;
import com.bionic.socialNet.dao.interfaces.IMessageDAO;
import com.bionic.socialNet.dao.interfaces.IProfileDAO;
import com.bionic.socialNet.dao.interfaces.IUserConnectionsDAO;
import com.bionic.socialNet.dao.interfaces.IUserDAO;
import java.sql.Connection;

/**
 *
 * @author Ann
 */
public abstract class DAOFactory {
  
    public static final int ORACLE = 1;
   
    public abstract IUserDAO getUserDAO();

    public abstract IProfileDAO getProfileDAO();

    public abstract IUserConnectionsDAO getUserConnectionsDAO();

    public abstract IMessageDAO getMessageDAO();

    public static DAOFactory getDAOFactory(
            int whichFactory) {

        switch (whichFactory) {
            case ORACLE:
                return new OraDAOFactory();
            default:
                return null;
        }
    }
}

